1. Field of the Invention
The present invention relates to an image processing apparatus, control method thereof, program, and storage medium.
2. Description of the Related Art
With advances in functions of multi-functional peripheral devices and other devices involved in image processing, increasingly higher image processing power is required. For example, there is a growing need to run various types of jobs simultaneously on a single device. Also, these types of devices are required to perform increasingly complex and diverse image processing.
With increases in the processing power of computers, specialized tasks which conventionally could only be performed by special-purpose hardware can now be performed on general-purpose computers by controlling them using specialized software. However, since complex processing and vast amounts of data processing are required of the devices involved in image processing as described above, it is difficult for software-based implementation to satisfy the requirements for image processing power. Consequently, hardware-based image processing is still dominant among multi-functional peripheral device.
In this way, conventional configuration uses special-purpose hardware for complex image processing from the viewpoint of processing speed and the like. However, development of such special-purpose hardware involves huge costs. Furthermore, in recent years, along with growth in market needs, product development cycles have been reduced, resulting in steady increases in relative hardware development costs.
On the other hand, reconfigurable processors have come to be known recently. They are equipped with a plurality of general-purpose processing modules and are capable of changing the process contents of the individual general-purpose processing modules dynamically and instantaneously. The behaviors of the individual modules can be defined freely by loading microprograms on the general-purpose processing modules, unlike conventional controllers consisting of hardware modules mounted on an integrated circuit in a fixed manner. Also, by changing the microprograms, it is possible to change the process contents of the individual general-purpose processing modules dynamically and instantaneously. Furthermore, the reconfigurable processors have processing speeds equivalent to that of special-purpose hardware.
Japanese Patent Laid-Open No. 2004-310730 discloses a processing apparatus equipped with reconfigurable processors to reduce its circuit scale.
Given the above background, it is conceivable to implement image processing capabilities required of multi-functional peripheral device using reconfigurable processors. This will presumably make it possible, for example, to avoid cost increases due to bloating hardware size and to give previously unavailable versatility to controllers of multi-functional peripheral device, thereby creating an environment for efficiently implementing the capabilities required of multi-functional peripheral devices.
However, the conventional configuration is not capable of allocating necessary and sufficient general-purpose processing modules to various processes according to processing, devices or other conditions. Consequently, throughput varies with the processes. Also, there are situations in which some processes are not sufficiently allocated the processor resources they need or some processes are allocated more than the necessary processor resources. This can result in poor usability of modules.
Incidentally, the conventional problems described above are true not only for image processing devices, such as multi-functional peripheral devices, but also for any devices which perform processing by means of reconfigurable processors.